﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using Portal.Model;

namespace Portal.Presentation.Services
{
	/// <summary>
	/// Interface <see cref="ISessionService"/> declare session service
	/// </summary>
	public interface ISessionService
	{
		/// <summary>
		/// Gets the current user.
		/// </summary>
		/// <returns>User</returns>
		IUser GetCurrentUser();

		/// <summary>
		/// Sets the current user.
		/// </summary>
		/// <param name="user">The user.</param>
		void SetCurrentUser(IUser user);

		/// <summary>
		/// Initializes the specified session.
		/// </summary>
		/// <param name="session">The session.</param>
		void Initialize(HttpSessionStateBase session);
	}
}
